import { $get, $post } from '../utils/request.ts'

// 获取评论列表
export const $getCommentList = async (pageNo: number, pageSize: number, videoId: string) => {
    try {
      // 使用 $get 来调用分页查询接口，传递查询条件、页码和每页大小
      const res = await $get('/pc/comment/list', {
        pageNo: pageNo,  // 参数可以包含分页信息及其他过滤条件
        pageSize: pageSize,
        videoId: videoId
      });
  
      // 假设返回的数据格式是 { code, message, result: { records, total, current, size } }
      return res; // 返回分页查询结果（如 records, total 等）
    } catch (error) {
      console.error('分页查询失败:', error);
      throw error; // 抛出错误供上层捕获
    }
  };


// 发送评论
export const $sendComment = async (params: { videoId: string, content: string, userId: string }) => {
    try {
        const res = await $post('/pc/comment/sendComment', params); // 调用POST请求，传递注册参数
        return res; // 返回接口返回的结果
    } catch (error) {
        console.error('评论失败:', error);
        throw error; // 抛出错误，方便上层捕获
    }
};


// 发送回复
export const $sendReply = async (params: { commentId: string, content: string, userId: string }) => {
  try {
      const res = await $post('/pc/comment/sendReply', params); // 调用POST请求，传递注册参数
      return res; // 返回接口返回的结果
  } catch (error) {
      console.error('评论失败:', error);
      throw error; // 抛出错误，方便上层捕获
  }
};


// 点赞或点踩评论
export const $commentLike = async (params: { commentId: string, choose: number, userId: string }) => {
  try {
      const res = await $post('/pc/comment/likeAndDisLike', params); // 调用POST请求，传递注册参数
      return res; // 返回接口返回的结果
  } catch (error) {
      console.error('点赞失败:', error);
      throw error; // 抛出错误，方便上层捕获
  }
};


// 点赞或点踩回复
export const $replyLike = async (params: { replyId: string, choose: number, userId: string }) => {
  try {
      const res = await $post('/pc/comment/likeAndDisLikeReply', params); // 调用POST请求，传递注册参数
      return res; // 返回接口返回的结果
  } catch (error) {
      console.error('点赞失败:', error);
      throw error; // 抛出错误，方便上层捕获
  }
};